﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Arthus.PJedinica
{
    public partial class PJedinicaForma : Form
    {
        private int idPosjeda;
        public static int idPartnera;
        public PJedinicaForma()
        {
            InitializeComponent();
            idPosjeda = 0;
        }

        Preduzece preduzeceObjekat = null;
        Partneri partnerObjekat = null;
        Posjed posjedObjekat = null;

        private void PJedinica_Activated(object sender, EventArgs e)
        {
            posjedObjekat = new Posjed();
            posjedObjekat.PopuniListBox(listBoxPJedinice);
            preduzeceObjekat = new Preduzece();
            preduzeceObjekat.PopuniComboBox(comboBoxPreduzece);
            posjedObjekat = new Posjed();
            posjedObjekat.PopuniKontroleNaOsnovuIdPosjeda(idPosjeda, textBoxOznaka, textBoxNaziv, textBoxAdresa, textBoxAdresa2, textBoxRPO, comboBoxPreduzece,
                textBoxVrsta, textBoxSkracenica);
            partnerObjekat = new Partneri();
            partnerObjekat.PopuniKontrolePartnera(idPartnera, textBoxSifraPartnera, textBoxNazivPartnera, textBoxMestoPartnera, checkBox1);
            BezPartnera();
        }

        private void textBoxPretragaPartnera_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                partnerObjekat = new Partneri();
                partnerObjekat.PretragaPartneraKalkulacijaIzlazniRacun(textBoxPretragaPartnera, textBoxSifraPartnera, textBoxNazivPartnera, textBoxMestoPartnera, checkBox1);
            }
            checkBoxBezPartnera.Checked = false;
            TABKaoENTER(e);
        }

        private void BezPartnera() {
            if (checkBoxBezPartnera.Checked == true) {
                idPartnera = 0;
            }
        }

        private void buttonZatvori_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void TABKaoENTER(KeyEventArgs e)
        {
            if (e.KeyData == Keys.Enter)
            {
                e.SuppressKeyPress = true;
                SelectNextControl(ActiveControl, true, true, true, true);
            }
        }
        private void textBoxOznaka_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxNaziv_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxAdresa_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxAdresa2_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxRPO_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void comboBoxPreduzece_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxVrsta_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }
        private void textBoxSkracenica_KeyDown(object sender, KeyEventArgs e)
        {
            TABKaoENTER(e);
        }

        private void VratiSveNaPocetak() {
            textBoxOznaka.Text = "";
            textBoxNaziv.Text = "";
            textBoxAdresa.Text = "";
            textBoxAdresa2.Text = "";
            comboBoxPreduzece.SelectedIndex = 0;
            textBoxPretragaPartnera.Text = "";
            textBoxSifraPartnera.Text = "";
            textBoxNazivPartnera.Text = "";
            textBoxMestoPartnera.Text = "";
            textBoxVrsta.Text = "";
            textBoxSkracenica.Text = "";
        }
        private void buttonDodaj_Click(object sender, EventArgs e)
        {
            posjedObjekat = new Posjed();
            posjedObjekat.DodajPosjed(textBoxOznaka, textBoxNaziv, textBoxAdresa, textBoxAdresa, textBoxRPO, comboBoxPreduzece, textBoxVrsta, textBoxSkracenica, 
                checkBoxBezPartnera);
            VratiSveNaPocetak();
            textBoxOznaka.Focus();
        }

        private void listBoxPJedinice_SelectedIndexChanged(object sender, EventArgs e)
        {
            idPosjeda = Convert.ToInt32(listBoxPJedinice.SelectedItem.ToString().Split('.')[0]);
            posjedObjekat = new Posjed();
            posjedObjekat.PopuniKontroleNaOsnovuIdPosjeda(idPosjeda, textBoxOznaka, textBoxNaziv, textBoxAdresa, textBoxAdresa2, textBoxRPO, comboBoxPreduzece,
                textBoxVrsta, textBoxSkracenica);
            partnerObjekat = new Partneri();
            partnerObjekat.PopuniKontrolePartnera(idPartnera, textBoxSifraPartnera, textBoxNazivPartnera, textBoxMestoPartnera, checkBox1);
        }

        private void buttonIzmeni_Click(object sender, EventArgs e)
        {
            posjedObjekat = new Posjed();
            posjedObjekat.IzmeniPosjed(idPosjeda, textBoxOznaka, textBoxNaziv, textBoxAdresa, textBoxAdresa, textBoxRPO, comboBoxPreduzece, textBoxVrsta, textBoxSkracenica,
                checkBoxBezPartnera);
        }

        private void buttonObrisi_Click(object sender, EventArgs e)
        {
            posjedObjekat = new Posjed();
            posjedObjekat.ObrisiPosjed(idPosjeda);
        }
    }
}
